package com.wicket.okrcomponent.web.contorller;

import com.github.pagehelper.Page;
import com.wicket.okrcomponent.biz.service.ConfSchemeService;
import com.wicket.okrcomponent.biz.service.dto.req.*;
import com.wicket.okrcomponent.biz.service.dto.res.*;
import com.wicket.okrcomponent.common.ro.OkrResult;
import com.wicket.okrcomponent.common.util.CommonFunctionHelper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * @author ：
 * @date ：
 *
 *
 * @version 1.0
 */
@RestController
@RequestMapping("/comp/confScheme/")
public class ConfSchemeController {

    @Autowired
    ConfSchemeService confSchemeService;

    /**
   * 1111111D2-3查评价模板文案结果列表（模式验证）
   */
    @PostMapping("queryEvaTempCopywriterList")
    public OkrResult<QueryEvaTempCopywriterListRespDto> queryEvaTempCopywriterList(@RequestBody @Validated QueryEvaTempCopywriterListReqDto reqDTO){
    Page<?> page = CommonFunctionHelper.startPage(reqDTO.getPageNum(),reqDTO.getPageSize());

        QueryEvaTempCopywriterListRespDto retData = confSchemeService.queryEvaTempCopywriterList(reqDTO);

        retData.setPageNum(page.getPageNum());
        retData.setPageSize(page.getPageSize());
        retData.setTotalNum(page.getTotal());
        return OkrResult.success(retData);
    
    }

    /**
   * D2-3批量查询配置项下选项关系列表
   */
    @PostMapping("batchQueryConfItemOption")
    public OkrResult<BatchQueryConfItemOptionRespDto> batchQueryConfItemOption(@RequestBody @Validated BatchQueryConfItemOptionReqDto reqDTO){
    return OkrResult.success(confSchemeService.batchQueryConfItemOption(reqDTO));
    }

    /**
   * D2-3查询分组下配置项列表
   */
    @PostMapping("queryConfClassItemList")
    public OkrResult<QueryConfClassItemListRespDto> queryConfClassItemList(@RequestBody @Validated QueryConfClassItemListReqDto reqDTO){
    Page<?> page = CommonFunctionHelper.startPage(reqDTO.getPageNum(),reqDTO.getPageSize());

        QueryConfClassItemListRespDto retData = confSchemeService.queryConfClassItemList(reqDTO);

        retData.setPageNum(page.getPageNum());
        retData.setPageSize(page.getPageSize());
        retData.setTotalNum(page.getTotal());
        return OkrResult.success(retData);
    
    }

    /**
     * 1111  D2-3查方案下选项配置结果列表(边界)
     */
    @PostMapping("queryConfItemResultListBorder")
    public OkrResult<QueryConfItemResultListBorderRespDto> queryConfItemResultListBorder(@RequestBody @Validated QueryConfItemResultListBorderReqDto reqDTO) {
        return OkrResult.success(confSchemeService.queryConfItemResultListBorder(reqDTO));
    }

    /**
   * D2-3批量新增分组下配置项
   */
    @PostMapping("batchAddConfClassItem")
    public OkrResult<BatchAddConfClassItemRespDto> batchAddConfClassItem(@RequestBody @Validated BatchAddConfClassItemReqDto reqDTO){
    return OkrResult.success(confSchemeService.batchAddConfClassItem(reqDTO));
    }

    /**
   * D2-3查分组匹配答案列表(公共)（跨服务）
   */
    @PostMapping("querySchemeClassMatchAnswerListCom")
    public OkrResult<QuerySchemeClassMatchAnswerListComRespDto> querySchemeClassMatchAnswerListCom(@RequestBody @Validated QuerySchemeClassMatchAnswerListComReqDto reqDTO){
    Page<?> page = CommonFunctionHelper.startPage(reqDTO.getPageNum(),reqDTO.getPageSize());

        QuerySchemeClassMatchAnswerListComRespDto retData = confSchemeService.querySchemeClassMatchAnswerListCom(reqDTO);

        retData.setPageNum(page.getPageNum());
        retData.setPageSize(page.getPageSize());
        retData.setTotalNum(page.getTotal());
        return OkrResult.success(retData);
    
    }

    /**
     * 11111D2-3查分组匹配答案列表(公共)(边界)
     */
    @PostMapping("querySchemeClassMatchAnswerListComBorder")
    public OkrResult<QuerySchemeClassMatchAnswerListComBorderRespDto> querySchemeClassMatchAnswerListComBorder(@RequestBody @Validated QuerySchemeClassMatchAnswerListComBorderReqDto reqDTO) {
        return OkrResult.success(confSchemeService.querySchemeClassMatchAnswerListComBorder(reqDTO));
    }

    /**
   * D2-3查配置项匹配答案详情(公共)（跨服务）
   */
    @PostMapping("queryConfItemMatchAnswerDetailCom")
    public OkrResult<QueryConfItemMatchAnswerDetailComRespDto> queryConfItemMatchAnswerDetailCom(@RequestBody @Validated QueryConfItemMatchAnswerDetailComReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryConfItemMatchAnswerDetailCom(reqDTO));
    }

    /**
   * D2-3重置开通方案下选项定制配置结果
   */
    @PostMapping("resetOpenConfItemResult")
    public OkrResult<ResetOpenConfItemResultRespDto> resetOpenConfItemResult(@RequestBody @Validated ResetOpenConfItemResultReqDto reqDTO){
    return OkrResult.success(confSchemeService.resetOpenConfItemResult(reqDTO));
    }

    /**
   * D2-3设置开通方案下选项配置结果
   */
    @PostMapping("setOpenConfItemResult")
    public OkrResult<SetOpenConfItemResultRespDto> setOpenConfItemResult(@RequestBody @Validated SetOpenConfItemResultReqDto reqDTO){
    return OkrResult.success(confSchemeService.setOpenConfItemResult(reqDTO));
    }

    /**
   * D2-3查询过滤已开通方案列表
   */
    @PostMapping("queryFilterSchemeOpenList")
    public OkrResult<QueryFilterSchemeOpenListRespDto> queryFilterSchemeOpenList(@RequestBody @Validated QueryFilterSchemeOpenListReqDto reqDTO){
    Page<?> page = CommonFunctionHelper.startPage(reqDTO.getPageNum(),reqDTO.getPageSize());

        QueryFilterSchemeOpenListRespDto retData = confSchemeService.queryFilterSchemeOpenList(reqDTO);

        retData.setPageNum(page.getPageNum());
        retData.setPageSize(page.getPageSize());
        retData.setTotalNum(page.getTotal());
        return OkrResult.success(retData);
    
    }

    /**
   * D2-3修改配置项
   */
    @PostMapping("updateConfItem")
    public OkrResult<UpdateConfItemRespDto> updateConfItem(@RequestBody @Validated UpdateConfItemReqDto reqDTO){
    return OkrResult.success(confSchemeService.updateConfItem(reqDTO));
    }

    /**
   * D2-3存档配置项
   */
    @PostMapping("archiveConfItem")
    public OkrResult<ArchiveConfItemRespDto> archiveConfItem(@RequestBody @Validated ArchiveConfItemReqDto reqDTO){
    return OkrResult.success(confSchemeService.archiveConfItem(reqDTO));
    }

    /**
   * D2-3查询配置项详情
   */
    @PostMapping("queryConfItemDetail")
    public OkrResult<QueryConfItemDetailRespDto> queryConfItemDetail(@RequestBody @Validated QueryConfItemDetailReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryConfItemDetail(reqDTO));
    }

    /**
   * D2-3存档配置方案
   */
    @PostMapping("archiveConfScheme")
    public OkrResult<ArchiveConfSchemeRespDto> archiveConfScheme(@RequestBody @Validated ArchiveConfSchemeReqDto reqDTO){
    return OkrResult.success(confSchemeService.archiveConfScheme(reqDTO));
    }

    /**
   * D2-3新增配置项
   */
    @PostMapping("addConfItem")
    public OkrResult<AddConfItemRespDto> addConfItem(@RequestBody @Validated AddConfItemReqDto reqDTO){
    return OkrResult.success(confSchemeService.addConfItem(reqDTO));
    }

    /**
   * D2-3设置方案下选项配置结果
   */
    @PostMapping("setConfSchemeItemResult")
    public OkrResult<SetConfSchemeItemResultRespDto> setConfSchemeItemResult(@RequestBody @Validated SetConfSchemeItemResultReqDto reqDTO){
    return OkrResult.success(confSchemeService.setConfSchemeItemResult(reqDTO));
    }

    /**
   * D2-3删除分组下配置项
   */
    @PostMapping("deleteConfClassItem")
    public OkrResult<DeleteConfClassItemRespDto> deleteConfClassItem(@RequestBody @Validated DeleteConfClassItemReqDto reqDTO){
    return OkrResult.success(confSchemeService.deleteConfClassItem(reqDTO));
    }

    /**
   * D2-3修改配置方案
   */
    @PostMapping("updateConfScheme")
    public OkrResult<UpdateConfSchemeRespDto> updateConfScheme(@RequestBody @Validated UpdateConfSchemeReqDto reqDTO){
    return OkrResult.success(confSchemeService.updateConfScheme(reqDTO));
    }

    /**
   * D2-3新增配置方案
   */
    @PostMapping("addConfScheme")
    public OkrResult<AddConfSchemeRespDto> addConfScheme(@RequestBody @Validated AddConfSchemeReqDto reqDTO){
    return OkrResult.success(confSchemeService.addConfScheme(reqDTO));
    }

    /**
   * D2-3查询配置方案详情
   */
    @PostMapping("queryConfSchemeDetail")
    public OkrResult<QueryConfSchemeDetailRespDto> queryConfSchemeDetail(@RequestBody @Validated QueryConfSchemeDetailReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryConfSchemeDetail(reqDTO));
    }

    /**
   * D2-3查询配置方案列表
   */
    @PostMapping("queryConfSchemeList")
    public OkrResult<QueryConfSchemeListRespDto> queryConfSchemeList(@RequestBody @Validated QueryConfSchemeListReqDto reqDTO){
    Page<?> page = CommonFunctionHelper.startPage(reqDTO.getPageNum(),reqDTO.getPageSize());

        QueryConfSchemeListRespDto retData = confSchemeService.queryConfSchemeList(reqDTO);

        retData.setPageNum(page.getPageNum());
        retData.setPageSize(page.getPageSize());
        retData.setTotalNum(page.getTotal());
        return OkrResult.success(retData);
    
    }

    /**
   * D2-3一键重置开通方案下选项配置结果
   */
    @PostMapping("batchResetOpenConfItemResult")
    public OkrResult<BatchResetOpenConfItemResultRespDto> batchResetOpenConfItemResult(@RequestBody @Validated BatchResetOpenConfItemResultReqDto reqDTO){
    return OkrResult.success(confSchemeService.batchResetOpenConfItemResult(reqDTO));
    }

    /**
   * D2-3删除配置选项
   */
    @PostMapping("deleteConfOption")
    public OkrResult<DeleteConfOptionRespDto> deleteConfOption(@RequestBody @Validated DeleteConfOptionReqDto reqDTO){
    return OkrResult.success(confSchemeService.deleteConfOption(reqDTO));
    }

    /**
   * D2-3新增配置选项
   */
    @PostMapping("addConfOption")
    public OkrResult<AddConfOptionRespDto> addConfOption(@RequestBody @Validated AddConfOptionReqDto reqDTO){
    return OkrResult.success(confSchemeService.addConfOption(reqDTO));
    }

    /**
   * D2-3发布配置选项
   */
    @PostMapping("releaseConfOption")
    public OkrResult<ReleaseConfOptionRespDto> releaseConfOption(@RequestBody @Validated ReleaseConfOptionReqDto reqDTO){
    return OkrResult.success(confSchemeService.releaseConfOption(reqDTO));
    }

    /**
   * D2-3查询配置选项详情
   */
    @PostMapping("queryConfOptionDetail")
    public OkrResult<QueryConfOptionDetailRespDto> queryConfOptionDetail(@RequestBody @Validated QueryConfOptionDetailReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryConfOptionDetail(reqDTO));
    }

    /**
   * D2-3查询配置选项列表
   */
    @PostMapping("queryConfOptionList")
    public OkrResult<QueryConfOptionListRespDto> queryConfOptionList(@RequestBody @Validated QueryConfOptionListReqDto reqDTO){
    Page<?> page = CommonFunctionHelper.startPage(reqDTO.getPageNum(),reqDTO.getPageSize());

        QueryConfOptionListRespDto retData = confSchemeService.queryConfOptionList(reqDTO);

        retData.setPageNum(page.getPageNum());
        retData.setPageSize(page.getPageSize());
        retData.setTotalNum(page.getTotal());
        return OkrResult.success(retData);
    
    }

    /**
   * D2-3删除配置项
   */
    @PostMapping("deleteConfItem")
    public OkrResult<DeleteConfItemRespDto> deleteConfItem(@RequestBody @Validated DeleteConfItemReqDto reqDTO){
    return OkrResult.success(confSchemeService.deleteConfItem(reqDTO));
    }

    /**
   * D2-3发布配置项
   */
    @PostMapping("releaseConfItem")
    public OkrResult<ReleaseConfItemRespDto> releaseConfItem(@RequestBody @Validated ReleaseConfItemReqDto reqDTO){
    return OkrResult.success(confSchemeService.releaseConfItem(reqDTO));
    }

    /**
   * D2-3删除配置项下选项关系
   */
    @PostMapping("deleteConfItemOption")
    public OkrResult<DeleteConfItemOptionRespDto> deleteConfItemOption(@RequestBody @Validated DeleteConfItemOptionReqDto reqDTO){
    return OkrResult.success(confSchemeService.deleteConfItemOption(reqDTO));
    }

    /**
   * D2-3修改配置选项
   */
    @PostMapping("updateConfOption")
    public OkrResult<UpdateConfOptionRespDto> updateConfOption(@RequestBody @Validated UpdateConfOptionReqDto reqDTO){
    return OkrResult.success(confSchemeService.updateConfOption(reqDTO));
    }

    /**
   * D2-3新增配置项下选项关系
   */
    @PostMapping("addConfItemOption")
    public OkrResult<AddConfItemOptionRespDto> addConfItemOption(@RequestBody @Validated AddConfItemOptionReqDto reqDTO){
    return OkrResult.success(confSchemeService.addConfItemOption(reqDTO));
    }

    /**
   * D2-3查询配置项下选项关系列表
   */
    @PostMapping("queryConfItemOptionList")
    public OkrResult<QueryConfItemOptionListRespDto> queryConfItemOptionList(@RequestBody @Validated QueryConfItemOptionListReqDto reqDTO){
    Page<?> page = CommonFunctionHelper.startPage(reqDTO.getPageNum(),reqDTO.getPageSize());

        QueryConfItemOptionListRespDto retData = confSchemeService.queryConfItemOptionList(reqDTO);

        retData.setPageNum(page.getPageNum());
        retData.setPageSize(page.getPageSize());
        retData.setTotalNum(page.getTotal());
        return OkrResult.success(retData);
    
    }

    /**
   * D2-3查询配置项列表
   */
    @PostMapping("queryConfItemList")
    public OkrResult<QueryConfItemListRespDto> queryConfItemList(@RequestBody @Validated QueryConfItemListReqDto reqDTO){
    Page<?> page = CommonFunctionHelper.startPage(reqDTO.getPageNum(),reqDTO.getPageSize());

        QueryConfItemListRespDto retData = confSchemeService.queryConfItemList(reqDTO);

        retData.setPageNum(page.getPageNum());
        retData.setPageSize(page.getPageSize());
        retData.setTotalNum(page.getTotal());
        return OkrResult.success(retData);
    
    }

    /**
   * D2-3发布配置方案
   */
    @PostMapping("releaseConfScheme")
    public OkrResult<ReleaseConfSchemeRespDto> releaseConfScheme(@RequestBody @Validated ReleaseConfSchemeReqDto reqDTO){
    return OkrResult.success(confSchemeService.releaseConfScheme(reqDTO));
    }

    /**
   * D2-3删除配置方案
   */
    @PostMapping("deleteConfScheme")
    public OkrResult<DeleteConfSchemeRespDto> deleteConfScheme(@RequestBody @Validated DeleteConfSchemeReqDto reqDTO){
    return OkrResult.success(confSchemeService.deleteConfScheme(reqDTO));
    }

    /**
   * D2-3新增分组下配置项
   */
    @PostMapping("addConfClassItem")
    public OkrResult<AddConfClassItemRespDto> addConfClassItem(@RequestBody @Validated AddConfClassItemReqDto reqDTO){
    return OkrResult.success(confSchemeService.addConfClassItem(reqDTO));
    }

    /**
   * D2-3查询过滤方案下配置项列表
   */
    @PostMapping("queryFilterConfItemSchemeList")
    public OkrResult<QueryFilterConfItemSchemeListRespDto> queryFilterConfItemSchemeList(@RequestBody @Validated QueryFilterConfItemSchemeListReqDto reqDTO){
    Page<?> page = CommonFunctionHelper.startPage(reqDTO.getPageNum(),reqDTO.getPageSize());

        QueryFilterConfItemSchemeListRespDto retData = confSchemeService.queryFilterConfItemSchemeList(reqDTO);

        retData.setPageNum(page.getPageNum());
        retData.setPageSize(page.getPageSize());
        retData.setTotalNum(page.getTotal());
        return OkrResult.success(retData);
    
    }

    /**
   * D2-3删除配置方案下分组
   */
    @PostMapping("deleteConfItemClass")
    public OkrResult<DeleteConfItemClassRespDto> deleteConfItemClass(@RequestBody @Validated DeleteConfItemClassReqDto reqDTO){
    return OkrResult.success(confSchemeService.deleteConfItemClass(reqDTO));
    }

    /**
   * D2-3修改配置方案下分组
   */
    @PostMapping("updateConfItemClass")
    public OkrResult<UpdateConfItemClassRespDto> updateConfItemClass(@RequestBody @Validated UpdateConfItemClassReqDto reqDTO){
    return OkrResult.success(confSchemeService.updateConfItemClass(reqDTO));
    }

    /**
   * D2-3新增配置方案下分组
   */
    @PostMapping("addConfItemClass")
    public OkrResult<AddConfItemClassRespDto> addConfItemClass(@RequestBody @Validated AddConfItemClassReqDto reqDTO){
    return OkrResult.success(confSchemeService.addConfItemClass(reqDTO));
    }

    /**
   * D2-3查询配置方案下分组列表
   */
    @PostMapping("queryConfItemClassList")
    public OkrResult<QueryConfItemClassListRespDto> queryConfItemClassList(@RequestBody @Validated QueryConfItemClassListReqDto reqDTO){
    Page<?> page = CommonFunctionHelper.startPage(reqDTO.getPageNum(),reqDTO.getPageSize());

        QueryConfItemClassListRespDto retData = confSchemeService.queryConfItemClassList(reqDTO);

        retData.setPageNum(page.getPageNum());
        retData.setPageSize(page.getPageSize());
        retData.setTotalNum(page.getTotal());
        return OkrResult.success(retData);
    
    }

    /**
   * D2-3查询配置项详情（边界）
   */
    @PostMapping("queryConfItemDetailBorder")
    public OkrResult<QueryConfItemDetailBorderRespDto> queryConfItemDetailBorder(@RequestBody @Validated QueryConfItemDetailBorderReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryConfItemDetailBorder(reqDTO));
    }

    /**
   * D2-3查询配置项匹配结果转答案(公共)
   */
    @PostMapping("queryItemMatchResultToAnswerDetailCom")
    public OkrResult<QueryItemMatchResultToAnswerDetailComRespDto> queryItemMatchResultToAnswerDetailCom(@RequestBody @Validated QueryItemMatchResultToAnswerDetailComReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryItemMatchResultToAnswerDetailCom(reqDTO));
    }

    /**
   * D2-3查询分组匹配结果转答案(公共)(跨服务）
   */
    @PostMapping("queryClassMatchResultToAnswerDetailCom")
    public OkrResult<QueryClassMatchResultToAnswerDetailComRespDto> queryClassMatchResultToAnswerDetailCom(@RequestBody @Validated QueryClassMatchResultToAnswerDetailComReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryClassMatchResultToAnswerDetailCom(reqDTO));
    }

    /**
   * D2-3查配置项匹配答案列表(公共)（跨服务）
   */
    @PostMapping("queryConfItemMatchAnswerListCom")
    public OkrResult<QueryConfItemMatchAnswerListComRespDto> queryConfItemMatchAnswerListCom(@RequestBody @Validated QueryConfItemMatchAnswerListComReqDto reqDTO){
    Page<?> page = CommonFunctionHelper.startPage(reqDTO.getPageNum(),reqDTO.getPageSize());

        QueryConfItemMatchAnswerListComRespDto retData = confSchemeService.queryConfItemMatchAnswerListCom(reqDTO);

        retData.setPageNum(page.getPageNum());
        retData.setPageSize(page.getPageSize());
        retData.setTotalNum(page.getTotal());
        return OkrResult.success(retData);
    
    }

    /**
   * D2-3查询主导航菜单列表
   */
    @PostMapping("queryMainNavMenusList")
    public OkrResult<QueryMainNavMenusListRespDto> queryMainNavMenusList(@RequestBody @Validated QueryMainNavMenusListReqDto reqDTO){
    Page<?> page = CommonFunctionHelper.startPage(reqDTO.getPageNum(),reqDTO.getPageSize());

        QueryMainNavMenusListRespDto retData = confSchemeService.queryMainNavMenusList(reqDTO);

        retData.setPageNum(page.getPageNum());
        retData.setPageSize(page.getPageSize());
        retData.setTotalNum(page.getTotal());
        return OkrResult.success(retData);
    
    }

    /**
   * D2-3判断UCD菜单(边界)
   */
    @PostMapping("judgeUcdMenuBorder")
    public OkrResult<JudgeUcdMenuBorderRespDto> judgeUcdMenuBorder(@RequestBody @Validated JudgeUcdMenuBorderReqDto reqDTO){
    return OkrResult.success(confSchemeService.judgeUcdMenuBorder(reqDTO));
    }
/**
   * D2-3修改方案下选项配置结果
   */
    @PostMapping("updateConfItemResult")
    public OkrResult<UpdateConfItemResultRespDto> updateConfItemResult(@RequestBody @Validated UpdateConfItemResultReqDto reqDTO){
    return OkrResult.success(confSchemeService.updateConfItemResult(reqDTO));
    }
/**
   * D2-3查询答案二次设置详情
   */
    @PostMapping("queryConfAnswerSecSetDetail")
    public OkrResult<QueryConfAnswerSecSetDetailRespDto> queryConfAnswerSecSetDetail(@RequestBody @Validated QueryConfAnswerSecSetDetailReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryConfAnswerSecSetDetail(reqDTO));
    }
/**
   * D2-3查询过滤已添加选项列表
   */
    @PostMapping("queryFilterConfOptionList")
    public OkrResult<QueryFilterConfOptionListRespDto> queryFilterConfOptionList(@RequestBody @Validated QueryFilterConfOptionListReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryFilterConfOptionList(reqDTO));
    }
/**
   * D2-3新增配置项下选项
   */
    @PostMapping("addConfItemConfOption")
    public OkrResult<AddConfItemConfOptionRespDto> addConfItemConfOption(@RequestBody @Validated AddConfItemConfOptionReqDto reqDTO){
    return OkrResult.success(confSchemeService.addConfItemConfOption(reqDTO));
    }
/**
   * D2-3查询方案匹配单一结果转答案(公共)（跨服务）
   */
    @PostMapping("querySchemeMatchSingleResultToAnswerDetailCom")
    public OkrResult<QuerySchemeMatchSingleResultToAnswerDetailComRespDto> querySchemeMatchSingleResultToAnswerDetailCom(@RequestBody @Validated QuerySchemeMatchSingleResultToAnswerDetailComReqDto reqDTO){
    return OkrResult.success(confSchemeService.querySchemeMatchSingleResultToAnswerDetailCom(reqDTO));
    }
/**
   * D2-3修改分组下配置项扩展信息
   */
    @PostMapping("updateConfClassItEmextendInfo")
    public OkrResult<UpdateConfClassItEmextendInfoRespDto> updateConfClassItEmextendInfo(@RequestBody @Validated UpdateConfClassItEmextendInfoReqDto reqDTO){
    return OkrResult.success(confSchemeService.updateConfClassItEmextendInfo(reqDTO));
    }

    /**
   * D2-3查询框架导航菜单列表
   */
    @PostMapping("queryFrameNavMenusList")
    public OkrResult<QueryFrameNavMenusListRespDto> queryFrameNavMenusList(@RequestBody @Validated QueryFrameNavMenusListReqDto reqDTO){
    Page<?> page = CommonFunctionHelper.startPage(reqDTO.getPageNum(),reqDTO.getPageSize());

        QueryFrameNavMenusListRespDto retData = confSchemeService.queryFrameNavMenusList(reqDTO);

        retData.setPageNum(page.getPageNum());
        retData.setPageSize(page.getPageSize());
        retData.setTotalNum(page.getTotal());
        return OkrResult.success(retData);
    
    }
    /**
   * D2-3批量查询二级导航菜单
   */
    @PostMapping("batchQuerySubNavMenus")
    public OkrResult<BatchQuerySubNavMenusRespDto> batchQuerySubNavMenus(@RequestBody @Validated BatchQuerySubNavMenusReqDto reqDTO){
    return OkrResult.success(confSchemeService.batchQuerySubNavMenus(reqDTO));
    }

    /**
   * D2-3批量查询评价主题文案内容(公共)
   */
    @PostMapping("batchQueryConfItemMatchEvaThemeAnswerCom")
    public OkrResult<BatchQueryConfItemMatchEvaThemeAnswerComRespDto> batchQueryConfItemMatchEvaThemeAnswerCom(@RequestBody @Validated BatchQueryConfItemMatchEvaThemeAnswerComReqDto reqDTO){
    return OkrResult.success(confSchemeService.batchQueryConfItemMatchEvaThemeAnswerCom(reqDTO));
    }
    /**
   * D2-3查询分组匹配模板答案公共)(跨服务）
   */
    @PostMapping("querySchemeClassMatchEvaTempAnswerDetailCom")
    public OkrResult<QuerySchemeClassMatchEvaTempAnswerDetailComRespDto> querySchemeClassMatchEvaTempAnswerDetailCom(@RequestBody @Validated QuerySchemeClassMatchEvaTempAnswerDetailComReqDto reqDTO){
    return OkrResult.success(confSchemeService.querySchemeClassMatchEvaTempAnswerDetailCom(reqDTO));
    }
    /**
   * D2-3查询方案分组匹配结果转答案(公共)
   */
    @PostMapping("querySchemeClassMatchResultToAnswerDetailCom")
    public OkrResult<QuerySchemeClassMatchResultToAnswerDetailComRespDto> querySchemeClassMatchResultToAnswerDetailCom(@RequestBody @Validated QuerySchemeClassMatchResultToAnswerDetailComReqDto reqDTO){
    return OkrResult.success(confSchemeService.querySchemeClassMatchResultToAnswerDetailCom(reqDTO));
    }
/**
   * D2-3新增方案下选项配置结果(公共)
   */
    @PostMapping("addConfItemResultCom")
    public OkrResult<AddConfItemResultComRespDto> addConfItemResultCom(@RequestBody @Validated AddConfItemResultComReqDto reqDTO){
    return OkrResult.success(confSchemeService.addConfItemResultCom(reqDTO));
    }
/**
   * D2-3查询配置项匹配结果扩展信息列表(公共)
   */
    @PostMapping("queryConfItemMatchResultExtendListCom")
    public OkrResult<QueryConfItemMatchResultExtendListComRespDto> queryConfItemMatchResultExtendListCom(@RequestBody @Validated QueryConfItemMatchResultExtendListComReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryConfItemMatchResultExtendListCom(reqDTO));
    }
/**
   * D2-3查询选项匹配结果扩展信息详情(公共)
   */
    @PostMapping("queryOptionMatchResultExtendDetailCom")
    public OkrResult<QueryOptionMatchResultExtendDetailComRespDto> queryOptionMatchResultExtendDetailCom(@RequestBody @Validated QueryOptionMatchResultExtendDetailComReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryOptionMatchResultExtendDetailCom(reqDTO));
    }
/**
   * D3-2查询答案结果匹配判断配置条件(公共)
   */
    @PostMapping("queryAnswerMatchEstimateConfConditionDetailCom")
    public OkrResult<QueryAnswerMatchEstimateConfConditionDetailComRespDto> queryAnswerMatchEstimateConfConditionDetailCom(@RequestBody @Validated QueryAnswerMatchEstimateConfConditionDetailComReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryAnswerMatchEstimateConfConditionDetailCom(reqDTO));
    }
/**
   * D2-3查询配置项匹配模板答案(公共)（跨服务）
   */
    @PostMapping("queryConfItemMatchEvaTempAnswerDetailCom")
    public OkrResult<QueryConfItemMatchEvaTempAnswerDetailComRespDto> queryConfItemMatchEvaTempAnswerDetailCom(@RequestBody @Validated QueryConfItemMatchEvaTempAnswerDetailComReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryConfItemMatchEvaTempAnswerDetailCom(reqDTO));
    }
/**
   * D2-3查询配置选项匹配结果转答案(公共)
   */
    @PostMapping("queryOptionMatchResultToAnswerDetailCom")
    public OkrResult<QueryOptionMatchResultToAnswerDetailComRespDto> queryOptionMatchResultToAnswerDetailCom(@RequestBody @Validated QueryOptionMatchResultToAnswerDetailComReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryOptionMatchResultToAnswerDetailCom(reqDTO));
    }
/**
   * D2-3批量查询选项标识匹配评价模板方案
   */
    @PostMapping("batchQueryOptionMatchEvaTempConfScheme")
    public OkrResult<BatchQueryOptionMatchEvaTempConfSchemeRespDto> batchQueryOptionMatchEvaTempConfScheme(@RequestBody @Validated BatchQueryOptionMatchEvaTempConfSchemeReqDto reqDTO){
    return OkrResult.success(confSchemeService.batchQueryOptionMatchEvaTempConfScheme(reqDTO));
    }
/**
   * D2-3批量查询业务场景过滤配置方案
   */
    @PostMapping("batchQueryBizSceneConfScheme")
    public OkrResult<BatchQueryBizSceneConfSchemeRespDto> batchQueryBizSceneConfScheme(@RequestBody @Validated BatchQueryBizSceneConfSchemeReqDto reqDTO){
    return OkrResult.success(confSchemeService.batchQueryBizSceneConfScheme(reqDTO));
    }
/**
   * D2-3查询配置方案详情(公共)
   */
    @PostMapping("queryConfSchemeDetailCom")
    public OkrResult<QueryConfSchemeDetailComRespDto> queryConfSchemeDetailCom(@RequestBody @Validated QueryConfSchemeDetailComReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryConfSchemeDetailCom(reqDTO));
    }
/**
   * D2-3查询过滤已开通方案列表(公共)
   */
    @PostMapping("queryFilterSchemeOpenListCom")
    public OkrResult<QueryFilterSchemeOpenListComRespDto> queryFilterSchemeOpenListCom(@RequestBody @Validated QueryFilterSchemeOpenListComReqDto reqDTO){
    Page<?> page = CommonFunctionHelper.startPage(reqDTO.getPageNum(),reqDTO.getPageSize());

        QueryFilterSchemeOpenListComRespDto retData = confSchemeService.queryFilterSchemeOpenListCom(reqDTO);

        retData.setPageNum(page.getPageNum());
        retData.setPageSize(page.getPageSize());
        retData.setTotalNum(page.getTotal());
        return OkrResult.success(retData);
    
    }
/**
   * D2-3批量查询主题下启用的配置方案
   */
    @PostMapping("batchQueryConfScheme")
    public OkrResult<BatchQueryConfSchemeRespDto> batchQueryConfScheme(@RequestBody @Validated BatchQueryConfSchemeReqDto reqDTO){
    return OkrResult.success(confSchemeService.batchQueryConfScheme(reqDTO));
    }
/**
   * D2-3查询文档类型配置答案详情(公共)
   */
    @PostMapping("queryDocumentTypeAnswerDetailCom")
    public OkrResult<QueryDocumentTypeAnswerDetailComRespDto> queryDocumentTypeAnswerDetailCom(@RequestBody @Validated QueryDocumentTypeAnswerDetailComReqDto reqDTO){
    Page<?> page = CommonFunctionHelper.startPage(reqDTO.getPageNum(),reqDTO.getPageSize());

        QueryDocumentTypeAnswerDetailComRespDto retData = confSchemeService.queryDocumentTypeAnswerDetailCom(reqDTO);

        retData.setPageNum(page.getPageNum());
        retData.setPageSize(page.getPageSize());
        retData.setTotalNum(page.getTotal());
        return OkrResult.success(retData);
    
    }
/**
   * D2-判断配置方案可用情况(公共)
   */
    @PostMapping("judgeConfSchemeUsableCaseCom")
    public OkrResult<JudgeConfSchemeUsableCaseComRespDto> judgeConfSchemeUsableCaseCom(@RequestBody @Validated JudgeConfSchemeUsableCaseComReqDto reqDTO){
    return OkrResult.success(confSchemeService.judgeConfSchemeUsableCaseCom(reqDTO));
    }
/**
   * D2-3查询主题下启用的模板方案列表
   */
    @PostMapping("queryThemeOpenEvaTempSchemeList")
    public OkrResult<QueryThemeOpenEvaTempSchemeListRespDto> queryThemeOpenEvaTempSchemeList(@RequestBody @Validated QueryThemeOpenEvaTempSchemeListReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryThemeOpenEvaTempSchemeList(reqDTO));
    }
/**
   * D2-3批量查询配置方案列表ByCodes
   */
    @PostMapping("batchQueryConfSchemeListByCodes")
    public OkrResult<BatchQueryConfSchemeListByCodesRespDto> batchQueryConfSchemeListByCodes(@RequestBody @Validated BatchQueryConfSchemeListByCodesReqDto reqDTO){
    return OkrResult.success(confSchemeService.batchQueryConfSchemeListByCodes(reqDTO));
    }
/**
   * D2-3查询评价模板相关配置答案列表(公共)
   */
    @PostMapping("queryEvaTempRetConfResultListCom")
    public OkrResult<QueryEvaTempRetConfResultListComRespDto> queryEvaTempRetConfResultListCom(@RequestBody @Validated QueryEvaTempRetConfResultListComReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryEvaTempRetConfResultListCom(reqDTO));
    }
/**
   * D2-3配置项匹配多选结果转答案(公共)
   */
    @PostMapping("queryItemMatchMultiSelectResultToAnswerListCom")
    public OkrResult<QueryItemMatchMultiSelectResultToAnswerListComRespDto> queryItemMatchMultiSelectResultToAnswerListCom(@RequestBody @Validated QueryItemMatchMultiSelectResultToAnswerListComReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryItemMatchMultiSelectResultToAnswerListCom(reqDTO));
    }
/**
   * D2查询配置项下答案及扩展列表(公共)
   */
    @PostMapping("queryConfItemConfAnswerExtendListCom")
    public OkrResult<QueryConfItemConfAnswerExtendListComRespDto> queryConfItemConfAnswerExtendListCom(@RequestBody @Validated QueryConfItemConfAnswerExtendListComReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryConfItemConfAnswerExtendListCom(reqDTO));
    }
/**
   * D2-3查配置项匹配的选项转答案(公共)
   */
    @PostMapping("queryItemMatchResultOptionToAnswerDetailCom")
    public OkrResult<QueryItemMatchResultOptionToAnswerDetailComRespDto> queryItemMatchResultOptionToAnswerDetailCom(@RequestBody @Validated QueryItemMatchResultOptionToAnswerDetailComReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryItemMatchResultOptionToAnswerDetailCom(reqDTO));
    }
/**
   * D2查询配置答案名称等无约束(公共)
   */
    @PostMapping("queryConfResultNameUnconstrainedDetailCom")
    public OkrResult<QueryConfResultNameUnconstrainedDetailComRespDto> queryConfResultNameUnconstrainedDetailCom(@RequestBody @Validated QueryConfResultNameUnconstrainedDetailComReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryConfResultNameUnconstrainedDetailCom(reqDTO));
    }
/**
   * D2执行授权的指标业务类型范围
   */
    @PostMapping("implementImpowerObjtiveTypeScope")
    public OkrResult<ImplementImpowerObjtiveTypeScopeRespDto> implementImpowerObjtiveTypeScope(@RequestBody @Validated ImplementImpowerObjtiveTypeScopeReqDto reqDTO){
    return OkrResult.success(confSchemeService.implementImpowerObjtiveTypeScope(reqDTO));
    }
/**
   * D2获取进度加载背景图(公共)
   */
    @PostMapping("obtainProgressLoadingBgCom")
    public OkrResult<ObtainProgressLoadingBgComRespDto> obtainProgressLoadingBgCom(@RequestBody @Validated ObtainProgressLoadingBgComReqDto reqDTO){
    return OkrResult.success(confSchemeService.obtainProgressLoadingBgCom(reqDTO));
    }
/**
   * D2获取进度用途类型背景图配置项标识(公共)
   */
    @PostMapping("obtainProgressUseTypeBgConfCodeCom")
    public OkrResult<ObtainProgressUseTypeBgConfCodeComRespDto> obtainProgressUseTypeBgConfCodeCom(@RequestBody @Validated ObtainProgressUseTypeBgConfCodeComReqDto reqDTO){
    return OkrResult.success(confSchemeService.obtainProgressUseTypeBgConfCodeCom(reqDTO));
    }
/**
   * D2-选项匹配结果扩展信息列表(公共)
   */
    @PostMapping("queryOptionMatchResultExtendListCom")
    public OkrResult<QueryOptionMatchResultExtendListComRespDto> queryOptionMatchResultExtendListCom(@RequestBody @Validated QueryOptionMatchResultExtendListComReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryOptionMatchResultExtendListCom(reqDTO));
    }
/**
   * D2查工作任务筛选条件列表
   */
    @PostMapping("queryWorkTaskScreenConditionList")
    public OkrResult<QueryWorkTaskScreenConditionListRespDto> queryWorkTaskScreenConditionList(@RequestBody @Validated QueryWorkTaskScreenConditionListReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryWorkTaskScreenConditionList(reqDTO));
    }
/**
   * D2查问题筛选条件列表
   */
    @PostMapping("queryQuestionScreenConditionList")
    public OkrResult<QueryQuestionScreenConditionListRespDto> queryQuestionScreenConditionList(@RequestBody @Validated QueryQuestionScreenConditionListReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryQuestionScreenConditionList(reqDTO));
    }
/**
   * D2查询配置项详情(公共)
   */
    @PostMapping("queryConfItemDetailCom")
    public OkrResult<QueryConfItemDetailComRespDto> queryConfItemDetailCom(@RequestBody @Validated QueryConfItemDetailComReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryConfItemDetailCom(reqDTO));
    }
/**
   * D2查询消息发送方配置答案(公共)
   */
    @PostMapping("queryMessageSenderConfAnswerDetailCom")
    public OkrResult<QueryMessageSenderConfAnswerDetailComRespDto> queryMessageSenderConfAnswerDetailCom(@RequestBody @Validated QueryMessageSenderConfAnswerDetailComReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryMessageSenderConfAnswerDetailCom(reqDTO));
    }
/**
   * D2准备评价模板配置入参(公共)
   */
    @PostMapping("implementPreEvaTempConfEntParameterCom")
    public OkrResult<ImplementPreEvaTempConfEntParameterComRespDto> implementPreEvaTempConfEntParameterCom(@RequestBody @Validated ImplementPreEvaTempConfEntParameterComReqDto reqDTO){
    return OkrResult.success(confSchemeService.implementPreEvaTempConfEntParameterCom(reqDTO));
    }
/**
   * D2准备评价模板相关配置(公共)
   */
    @PostMapping("preparationEvaTempCorrelationConfCom")
    public OkrResult<PreparationEvaTempCorrelationConfComRespDto> preparationEvaTempCorrelationConfCom(@RequestBody @Validated PreparationEvaTempCorrelationConfComReqDto reqDTO){
    return OkrResult.success(confSchemeService.preparationEvaTempCorrelationConfCom(reqDTO));
    }
/**
   * D2准备刷目标归属周期配置(公共)
   */
    @PostMapping("preparationBrushTargetAttributionCycleConfCom")
    public OkrResult<PreparationBrushTargetAttributionCycleConfComRespDto> preparationBrushTargetAttributionCycleConfCom(@RequestBody @Validated PreparationBrushTargetAttributionCycleConfComReqDto reqDTO){
    return OkrResult.success(confSchemeService.preparationBrushTargetAttributionCycleConfCom(reqDTO));
    }
/**
   * D2刷目标归属周期绩效配置(公共)
   */
    @PostMapping("implementBrushPerfTargetAttributionCycleConfCom")
    public OkrResult<ImplementBrushPerfTargetAttributionCycleConfComRespDto> implementBrushPerfTargetAttributionCycleConfCom(@RequestBody @Validated ImplementBrushPerfTargetAttributionCycleConfComReqDto reqDTO){
    return OkrResult.success(confSchemeService.implementBrushPerfTargetAttributionCycleConfCom(reqDTO));
    }
/**
   * D2准备上传文档配置(公共)
   */
    @PostMapping("preparationUploadFileConfCom")
    public OkrResult<PreparationUploadFileConfComRespDto> preparationUploadFileConfCom(@RequestBody @Validated PreparationUploadFileConfComReqDto reqDTO){
    return OkrResult.success(confSchemeService.preparationUploadFileConfCom(reqDTO));
    }
/**
   * D2答案值批量查配置结果(公共)
   */
    @PostMapping("batchQueryEndValueBatchConfResultCom")
    public OkrResult<BatchQueryEndValueBatchConfResultComRespDto> batchQueryEndValueBatchConfResultCom(@RequestBody @Validated BatchQueryEndValueBatchConfResultComReqDto reqDTO){
    return OkrResult.success(confSchemeService.batchQueryEndValueBatchConfResultCom(reqDTO));
    }
/**
   * D2查询初始化空间配置(公共)
   */
    @PostMapping("queryInitSpaceConfDetailCom")
    public OkrResult<QueryInitSpaceConfDetailComRespDto> queryInitSpaceConfDetailCom(@RequestBody @Validated QueryInitSpaceConfDetailComReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryInitSpaceConfDetailCom(reqDTO));
    }
/**
   * D2新增配置方案推送redis(公共)
   */
    @PostMapping("addConfPushRedisCom")
    public OkrResult<AddConfPushRedisComRespDto> addConfPushRedisCom(@RequestBody @Validated AddConfPushRedisComReqDto reqDTO){
    return OkrResult.success(confSchemeService.addConfPushRedisCom(reqDTO));
    }
/**
   * D2执行配置方案推送redis(公共)
   */
    @PostMapping("implementConfPushRedisCom")
    public OkrResult<ImplementConfPushRedisComRespDto> implementConfPushRedisCom(@RequestBody @Validated ImplementConfPushRedisComReqDto reqDTO){
    return OkrResult.success(confSchemeService.implementConfPushRedisCom(reqDTO));
    }
/**
   * D2查询初始化平台配置详情(公共)
   */
    @PostMapping("queryInitPlatformConfDetailCom")
    public OkrResult<QueryInitPlatformConfDetailComRespDto> queryInitPlatformConfDetailCom(@RequestBody @Validated QueryInitPlatformConfDetailComReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryInitPlatformConfDetailCom(reqDTO));
    }
/**
   * D2查询财务小数规则详情(公共)
   */
    @PostMapping("queryFinaceDecimalPointDetailCom")
    public OkrResult<QueryFinaceDecimalPointDetailComRespDto> queryFinaceDecimalPointDetailCom(@RequestBody @Validated QueryFinaceDecimalPointDetailComReqDto reqDTO){
    return OkrResult.success(confSchemeService.queryFinaceDecimalPointDetailCom(reqDTO));
    }
    //

}
